---
sidebar_position: 8
---

# Запрос на слияние

:::info

Материал статьи основан на ["Creating merge requests"](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html)

:::

## Создание запроса на слияние

Далее нам предстоит создать запрос на слияние. Сделать это можно из списка запросов на слияние в интерфейсе управления удаленным репозиторием. Для этого:

1. На верхней панели выберите `Главное меню > Проекты` и найдите свой проект.
2. В меню слева выберите `Запросы на слияние`:

   ![Список запросов на слияние](images/merge-request-list.png)

3. В правом верхнем углу выберите `Новый запрос на слияние`.
4. Выберите исходную (`feature1`) и целевую (`master`) ветви, а затем сравните ветви и продолжите.

    ![Сравнение изменений](images/create-merge-request-step2.png)

5. Заполните поля и выберите `Создать запрос на слияние`.

    ![Описание запроса на слияние](images/create-merge-request-step1.png)

:::info

Запросы на слияние разрабатываются на основе взаимно однозначных `(1:1)` отношений ветвления. Одновременно с заданной целевой веткой может быть связан только один открытый запрос на слияние.

:::

## Принятие запроса на слияние

Осуществите проверку запроса на слияние:

![Проверка запроса на слияние](images/merge-request-check.png)

В случае отсутствия замечаний и проблем, подтвердите запрос на слияние (`Approve`), активируйте флаги `Delete source branch` и `Squash commits`, и нажмите на `Merge`.

Проверьте результат слияния в удаленном репозитории:

![Результат слияния](images/merge-request-result.png)

## Работа с локальным репозиторием

В локальном репозитории выполните следующие шаги:

1. Перейдите в ветку master с помощью команды `git checkout` (см. [Работа с ветками](../../../lectures/gitcicd/git/basics/branches.md)).
2. Вытяните все изменения в локальном репозитории из удаленного через `git pull` (см. [Удалённый репозиторий](../../../lectures/gitcicd/git/basics/remote-repository.md)).
3. С помощью команды `git log` просмотрите историю в локальной версии ветки `master` (см. [История коммитов](../../../lectures/gitcicd/git/basics/history.md)).
4. Удалите локальную ветку `feature1` (см. [Работа с ветками](../../../lectures/gitcicd/git/basics/branches.md)).
